package models

import (
	"gitee.com/dromara/carbon/v2"
)

// Users 用户表
type User struct {
	ID        int64         `json:"id" gorm:"id"`                 // ID
	OpenId    string        `json:"open_id" gorm:"open_id"`       // 唯一标识
	UnionId   string        `json:"union_id" gorm:"union_id"`     // 平台下唯一标识
	Nickname  string        `json:"nickname" gorm:"nickname"`     // 昵称
	Avatar    string        `json:"avatar" gorm:"avatar"`         // 头像
	Gender    int64         `json:"gender" gorm:"gender"`         // 性别。【0：未知；1：男性；2：女性。】
	Country   string        `json:"country" gorm:"country"`       // 所在国家
	Province  string        `json:"province" gorm:"province"`     // 所在省份
	City      string        `json:"city" gorm:"city"`             // 所在城市
	CreatedAt carbon.Carbon `json:"created_at" gorm:"created_at"` // 创建时间
	UpdatedAt carbon.Carbon `json:"updated_at" gorm:"updated_at"` // 修改时间

	UserInfo   *UserInfo   `json:"user_info" gorm:"foreignKey:UserId"`
	UserWallet *UserWallet `json:"user_wallet" gorm:"foreignKey:UserId"`

	Member *Members `json:"member" gorm:"foreignKey:UserId"` // 会员信息
}

// TableName 表名称
func (*User) TableName() string {
	return "users"
}
